Virtual and overlay network technology has significantly improved the implementation of communication and data networks in terms of efficiency, cost, and processing power. An overlay network may be a virtual environment built on top of an underlay network. Nodes within the overlay network may be connected via virtual and/or logical links that may correspond to nodes and physical links in the underlay network. The overlay network may be partitioned into virtual network instances (e.g. Internet Protocol (IP) subnets) that may simultaneously execute different applications and services using the underlay network. Furthermore, virtual resources, such as computational, storage, and/or network elements may be flexibly redistributed or moved throughout the overlay network. For instance, hosts and virtual machines (VMs) within a data center may migrate to any virtualized server with available resources to perform applications and services. As a result, virtual and overlay network technology has been central to improving today's communication and data network by reducing network overhead while improving network throughput.
Unfortunately, many of today's networks are large and complex such that the networks comprise a massive number of end nodes (e.g. hosts and VMs) which may not be placed based on their address prefix (e.g. IP subnet prefix). As a result, routers may not be able to aggregate addresses in their forwarding data base (e.g. one entry of 192.2.1.x to represent 256 end nodes). For example, highly virtualized data centers may have hundreds of thousands to millions of hosts and VMs because of business demands and highly advanced server virtualization technologies. To hide the massive number of end nodes in a network, an ingress boundary node may map the addresses of end nodes to an egress boundary node within the overlay network. As such, boundary nodes need to maintain a considerable amount of mapping data for the countless number of end nodes within a network when the end nodes are not placed based on their address prefix. However, boundary nodes have limited memory capacity and processing capability that may prevent boundary nodes from maintaining all the mapping information. Installing additional boundary nodes may not improve the situation because each boundary node may need to maintain all the mapping information. Therefore, many of today's networks implement processes to compensate for the mapping deficiencies found in boundary nodes.
One method to compensate for the insufficient mapping ability of boundary nodes is to flood received data packets when the destination is unknown. For instance, an ingress boundary node can receive a data packet from a source end node and not recognize which egress boundary node can reach the target end node. The ingress boundary node may encapsulate the data packet with a multicast destination address and flood the encapsulated data packet to other boundary nodes that may have attached end nodes within the virtual network instance. However, constant flooding of data packets significantly impacts network performance and capacity. Flood frames may be consistently transmitted when the target end node is out of service or when the end nodes (e.g. VMs) continually migrate within the overlay network.
Alternatively, a boundary node may send broadcast messages, such as Interior Gateway Protocol (IGP) advertisements, that announce to all other boundary nodes within the virtual network instance the specific end nodes attached to the boundary node. An example of an IGP advertisement may be a link-state routing protocol as described in the Internet Engineering Task Force (IETF) draft-ietf-trill-esadi-01, entitled “Transparent Interconnection of Lots of Links (TRILL): The End System Address Distribution Information (ESADI), published Oct. 2, 2012, which is incorporated herein as if reproduced by its entirety. All of the boundary nodes that receive the broadcast message subsequently process and cache the mapping entries for the end nodes. The constant processing of the broadcast messages coupled with processing other data traffic traveling within the overlay network may cause boundary nodes to become a bottleneck for a network. Hence, other methods are needed to efficiently manage data traffic and the address resolution amongst the end nodes and boundary nodes of a network.